/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */

import { ApesTreeNode } from './apes-tree-base-node';

export interface ApesFormatEmitEvent {
  eventName: string;
  node?: ApesTreeNode | null;
  event?: MouseEvent | DragEvent | null;
  dragNode?: ApesTreeNode;
  selectedKeys?: ApesTreeNode[];
  checkedKeys?: ApesTreeNode[];
  matchedKeys?: ApesTreeNode[];
  nodes?: ApesTreeNode[];
  keys?: string[];
}

export interface ApesFormatBeforeDropEvent {
  dragNode:  ApesTreeNode;
  node:  ApesTreeNode;
  pos: number;
}

export interface ApesTreeNodeBaseComponent {
  setClassMap(): void;
  markForCheck(): void;
}
